package com.example.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.example.domain.entity.LoginLog;
import com.example.domain.query.LoginLogQuery;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;

import java.util.List;

public interface LoginLogService {

    /**
     * 记录登录日志
     */
    void recordLoginLog(String username, String status, String message, HttpServletRequest request);

    /**
     * 记录登录日志（无请求信息）
     */
    void recordLoginLog(String username, String status, String message);

    /**
     * 获取登录日志分页列表
     */
    IPage<LoginLog> getLoginLogPage(LoginLogQuery query);

    /**
     * 批量删除登录日志
     */
    void deleteLoginLogByIds(List<Long> ids);

    /**
     * 清空登录日志
     */
    void clearLoginLog();

    /**
     * 导出登录日志
     */
    void exportLoginLog(LoginLogQuery query, HttpServletResponse response);
} 